// 挂载注册所有全局公共组件
// 软件架构: 高内聚低耦合

// 导入组件
import PageTools from './PageTools'
import UploadExecl from './UploadExcel'
import ElDepSelect from './DepSel'
import UploadImg from './UploadImg'
import ScreenFull from './ScreenFull'
import Lang from './Lang'

// 批量注册多个组件 => 把组件放入数组,循环数组注册所有组件
const components = [Lang, ScreenFull, PageTools, UploadExecl, ElDepSelect, UploadImg]

// vue插件写法: 声明一个对象,里面放install方法(Vue构造函数)
export default {
  install (Vue) {
    // 可以挂载全局方法属性 / 注册全局组件/指令
    // Vue.prototype.
    // 注册全局组件
    // Vue.component('PageTools', PageTools)
    components.forEach(cp => {
      Vue.component(cp.name, cp)
    })
  }
}
